package com.example.xlmkotlinwanandroid.network

import com.example.xlmkotlinwanandroid.util.ConstantUtil
import retrofit2.converter.gson.GsonConverterFactory

import retrofit2.Retrofit


/**
 * 获取一个retrofiitManager
 */
object ServiceCreator {
    //1.创建1个retrofit对象
    private val retrofit = Retrofit.Builder().baseUrl(ConstantUtil.BASE_URL)
        .addConverterFactory(GsonConverterFactory.create()).build()

    //2.使用泛型生成对应的apiService
    fun <T> create(serviceClass: Class<T>): T = retrofit.create(serviceClass)

    //使用泛型实例化,第二步的另外一种写法，可以不用
    inline fun <reified T> create(): T = create(T::class.java)
}